Cтруктура папок

Для того чтобы понимать строение файловой структуры установленной системы, пользуйся этой памяткой:

/bin

Чаще всего является симлинком к /usr/bin, но может быть и отдельной папкой. В нем находятся утилиты которыми может воспользоваться пользователь без прав администратора. Большинство системных утилит находятся там в первую очередь.

/boot

Папка в которой находятся файлы загрузки ядра и само ядро для инициализации запуска системы.

  • /boot/efi/ - место хранения загрузчика EFI
  • /boot/grub/ - конфигурация загрузчика GRUB

/dev

Концепция Linux гласит о том, что все есть фаил. В этом каталоге находятся устроиства которые представлены в виде файлов.

  • /dev/disk/ - содержит блочные устроиства жестких дисков по идентификаторам. Доступные варианты - uuid,partuuid,id и path. Используется, например, если нужно прописать автоматическое монтирование в /etc/fstab
  • /dev/snd - содержит аудио устроиства
  • /dev/sdX или /dev/hdX или /dev/nvmeXnX - SATA, IDE и NVME жесткие диски соответственно. В порядке подключения по шине, идут в алфавитном порядке или числом по возрастанию. В случае монтирования жесткого диска вручную, требуется указать устроиство именно в таком формате, например mount /dev/sda1 /mnt
  • /dev/null - устроиство которое ничего не отдает и ничего не принимает. Заглушка

/etc

Здесь хранятся конфигурационные файлы программ.

  • /etc/fstab - фаил в котором хранится информация о автоматическом монтировании жестких дисков или swap.
  • /etc/hosts - информация о IP адресах. Локальный DNS
  • /etc/passwd - информация о пользователях, группах и их оболочке
  • /etc/shadow - пароли пользователей, которые хранятся в виде хэшей
  • /etc/ssh/ - конфигурация SSH
  • /etc/systemd/ - юниты и конфигурация демона Systemd
  • /etc/profile - стандартная конфигурация оболочки для входа в систему. Обычно копируется в домашнюю папку, которую можно настроить персонально

/home

Твоя домашняя папка в которой хранятся как конфигурации и переменные профилей пользователей, так и документы с которыми вы работаете. Скорее всего ты найдешь внутри некоторое количество файлов. Это настройки bash, ssh, кэши некоторых программ. Здесь можно хранить все что захочется, другие пользователи не смогут зайти к тебе, если у них нет разрешений. В консоли можно перейти в домашнюю папку введя команду cd ~. Для удобства, путь от домашней папки указывается так же через ~

  • ~/.ssh/ - ключи и файлы клиента SSH
  • ~/.bashrc - скрипт-конфигурация bash для текущего пользователя. Внутри есть подсказки как сделать свои (алиасы)(/alias), настроить цвет
  • ~/.bash_history - история команд введенных в консоль
  • ~./bash_logout - скрипт, который выполняется, в случае если вы выходите из консоли.

/lib

Библиотеки с которыми работают программы хранятся здесь. Внутри можно найти множество файлов с расширением *.so и вспомогательные файлы для программ. Так же в некоторых случаях является симлинком на /usr/lib.

/lost+found

Папка в которую программа fsck складывает потерянные или "ничейные" файлы.

/media

В системах с графическим интерфейсом, например KDE, в эту папку монтируются внешние носители, например дисковод или USB-флешка. В Ubuntu можно увидеть аналог в лице папки /cdrom /mnt Аналог папки /media. Можно использовать для временного монтирования хоть ISO-файла, хоть внешнего устроиства хранения данных.

/opt

Директория для хранения дополнительного ПО, скачанное, например, не с репозитория. Опционально

/proc

Файлы ядра, процессов и устроиств. Представлена в виде псевдофайловой системы procfs, заполняется автоматически при запуске. Cторонние программы могут брать информацию для своих нужд

  • /proc/cpuinfo - информация о процессоре и ядрах. Полезно если нужно определить поддерживает ли процессор инструкции AVX, например
  • /proc/uptime - суммарное время работы системы с момента последней перезагрузки/включения
  • /proc/mdstat - информация о программном RAID

/root

Домашняя папка пользователя root. Такое же как и /home, но админ разве не заслуживает своего пространства?)

/run

Место хранения необходимых временных файлов программ. Тут лежат сокеты и идентификаторы процессов. Такой формат хранения появился относительно недавно. Не во всех системах можно встретить, но тем не менее имеет место быть.

/sbin

Здесь хранятся программы которые может выполнить только пользователь с правами администратора. Например пользователь с правами sudo или root.

/srv

Некоторое ПО, вроде Apache2 или Nginx смотрят в него, возможно у нее было изначально другое предназначение, но папка есть. Значит нужна)

/sys

Хранит в себе информацию о устроиствах, ядре и драйверах

/tmp

Временные файлы программ. Папка очищается после каждого перезапуска системы.

/usr

Место хранения программ, документации. Так же может хранить исходный код программ и библиотеки.

  • /usr/bin/ - чаще всего на него ссылается /bin. Содержит программы которыми может пользоваться обычный пользователь
  • /usr/include/ - файлы заголовков. Используются, в основном, при сборке программ из исходных кодов.
  • /usr/lib/ - чаще всего на него ссылается /lib. Библиотеки для программ
  • /usr/local/ - иногда программы, библиотеки и дополнительные файлы кидают сюда. Содержит внутри те же папки bin, lib и share. Как правило в переменной PATH эта папка тоже указана.
  • /usr/sbin/ - чаще всего на него ссылается /sbin. Программы которые может выполнить пользователь с правами администратора или root.
  • /usr/share/ - архитектурно независимые данные. Часто иконки, дополнительные данные, man и прочее.

/var

Каталог временных данных, но которые не удаляются при перезагрузке. Логи пишутся, обычно сюда

  • /var/cache/ - кэши приложений
  • /var/lock/ - файлы блокировок. Программы могут пользоваться механизмом генерации файла блокировки, чтобы, например, не запускаться повторно или не запускаться в момент когда идет решение какой то задачи.
  • /var/log/ - файлы логов. Множество программ по умолчанию пишут сюда все что происходит или что косячит. Например Apache2 или Zabbix-Agent
  • /var/spool/ - файлы очереди печати
  • /var/tmp/ - временные файлы, которые не удаляются при перезагрузке
  • /var/www/html/ - Apache2 по умолчанию использует эту папку как место хранения данных вебсайта
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9